package com.chaodev.base.dao;

import com.chaodev.base.dto.ActivityDivisionDto;
import com.chaodev.base.model.ActivityDivision;
import com.chaodev.base.model.ActivityNotice;
import com.chaodev.base.model.Volunteer;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface ActivityDivisionDao {

    /**
     * 新增活动分工
     * @param activityDivision
     * @return
     */
    int insertActivityDivision(ActivityDivision activityDivision);

    /**
     * 修改活动分工
     * @param activityDivision
     * @return
     */
    int updateActivityDivision(ActivityDivision activityDivision);

    /**
     * 删除活动分工
     * @param id
     * @return
     */
    int deleteActivityDivision(@Param(value = "id") String id);

    /**
     * 查询活动分工列表
     * @param activityDivisionDto
     * @return
     */
    List<ActivityDivision> selectActivityDivisionList(ActivityDivisionDto activityDivisionDto);

    /**
     * 根据活动获取报名志愿者
     * @param id
     * @return
     */
    List<Volunteer> selectVolunteerByActivity(@Param(value = "id") String id);

    /**
     * 获取用户待分工活动列表
     * @param userCode
     * @return
     */
    List<ActivityNotice> selectActivityNoticeNotDivision(@Param(value = "userCode") String userCode);
}
